1. Field of the Invention
The present invention relates to a node for conducting a band control in order that a communication band of a link is fairly used by a plurality of traffic packets, and a fair rate calculating method used by the node.
2. Description of the Related Art
In the Internet, a multiplexing scheme called a “packet multiplexing scheme” is used instead of a time-division multiplexing scheme which previously allocates a predetermined communication band to a traffic packet.
In the packet multiplexing scheme, a communication band is shared by all traffic packets. A network node (hereinafter simply called the “node”) can transmit or receive a traffic packet when there is an available communication band which is not used by another traffic packet. In other words, a traffic packet can be transmitted or received when other traffic packets are at a low communication rate and the communication band has a free scope.
Here, the traffic packet refers to a set of data in predetermined units transmitted from a node within a communication network. For example, in a communication network to which RPR (Resilient Packet Ring) is applied, a frame (RPR frame) transmitted from an RPR node corresponds to data in predetermined units, and a set of RPR frames corresponds to a traffic packet. Also, a communication band used by a traffic packet is defined by a value which is calculated by dividing a total sum of data included in the traffic packet in predetermined units by a time taken for transmission/reception (i.e., a communication rate). However, for actually calculating a communication rate of a traffic packet at a node, another simple calculation method may be used in some cases, not limited to the calculation method according to the foregoing definition.
In the time-division multiplexing scheme, even if a communication band allocated to a certain traffic packet is not used, another traffic packet is prohibited from using the communication band. In the packet multiplexing scheme, on the other hand, another traffic packet is permitted to use a free band. Thus, the packet multiplexing scheme provides a higher band utilization efficiency than the time-division multiplexing scheme. This effect is called a statistic multiplexing effect of the packet multiplexing scheme.
However, in the packet multiplexing scheme, when a particular link of a communication system is utilized by multiple traffic packets at the same time, the transfer of traffic packets can be delayed or partially discarded if the traffic packet amount exceeds a communication band of the link (congestion). In this event, communications become unstable, or communications are broken.
To solve such a problem, a variety of band control methods have been devised for ensuring a predetermined communication band for a particular traffic in the packet multiplexing scheme as well as the time-division multiplexing scheme, preferentially transmitting traffic packets having higher priorities, and the like.
As one of such band control methods, there is a band control method for fairly using a communication band of an arbitrary link within a communication system amount all traffic packets which use the link. Here, “fairly using a communication band of a link amount traffic packets” involves equally dividing the communication band of the link by the number of traffic packets which use the link, and controls such that the communication band of each traffic packet does not exceed the value. For example, assume that the communication band of the link is 10 Gbps, and there are four traffic packets A, B, C, D. In this scenario, the communication band of each traffic packet is controlled so as not to exceed 2.5 Gbps (=10 Gbps/4).
As an example of such band control, there is a band control method called “fairness” which is used by RPR standardized in IEEE (the Institute of Electrical and Electronics Engineers) in 2004. Fairness is described in IEEE Standards 802.17 Part 17: Resilient packet ring (RPR) access method & physical layer specifications,”“10.Fairness,” IEEE (Institute of Electrical and Electronics Engineers, Inc), 2004, p. 225-284 (hereinafter called Non-Patent Document 1). In the following, a traffic packet, the communication band of which is controlled in accordance with fairness is called a “fairness controlled traffic packet”.
A communication network to which RPR is applied (hereinafter called the “RPR network”) is a double ring network which comprises a ring (ringlet) for transferring frames in the clockwise direction, and a ring (ringlet) for transferring frames in the counter-clockwise direction). The ringlet refers to a communication path of the RPR network.
In the RPR network, a band guaranteed traffic packet for which a communication band for the traffic packet is guaranteed, and a best-effort traffic packet for which no communication band is guaranteed are defined. Guaranteeing a communication band for a traffic packet means that a communication band required for transmitting/receiving the traffic packet is ensured.
A band guaranteed traffic packet is exclusively allocated a predetermined communication band beforehand, and is transmitted preferentially to a best-effort traffic packet. The band guaranteed traffic packet is guaranteed for communication at all times at a communication rate equal to or lower than the guaranteed band. However, if there are a plurality of band guaranteed traffic packets within a communication network, which share the same link, it is necessary to set a guaranteed band for each band guaranteed traffic packet such that the total sum of the communication bands allocated to these traffic packets is equal to or smaller than a minimum value of the communication band of the shared link.
On the other hand, the best-effort traffic packet is a normal traffic packet in the packet multiplexing scheme, and is a traffic packet which can be transmitted using an unused communication band, if any, as mentioned above.
In RPR, Class A and Class B are defined as service classes for the band guaranteed traffic packets. Also, in RPR, Class C is defined as a service class for the best-effort traffic packet. Further, Class A is sub-divided into Class A0 and Class A1, while Class B is sub-divided into Class B-CIR and Class B-EIR. While Class B is defined as a service class for the band guaranteed traffic packet, a traffic packet of Class-B-EIR is a best-effort traffic packet, as will be later described.
Class A0 is a service class which exclusively allocates a predetermined band beforehand. Also, even if the communication band is not used by the traffic packet of Class A0, the communication band cannot be used by any traffic packet of other service classes.
Class A1 is also a band guaranteed service class which allocates a predetermined communication band beforehand. However, when the communication band is not used by the traffic packet of Class A1, the unused band can be used by a fairness controlled traffic packet. Specifically, when a communication rate of a traffic packet of Class A1 is lower than a communication band previously allocated to Class A1, the band not used by a traffic packet of Class A1 can be used to transmit fairness controlled traffic packet.
The traffic packet of Class B is also allocated a predetermined communication band beforehand. However, when the traffic packet of Class B is transmitted in a communication band larger than the allocated one, the traffic packet within the communication band is transmitted as a traffic packet of Class B-CIR, while a traffic packet exceeding the communication band is transmitted as Class B-EIR.
Class B-CIR is a service class substantially similar to Class A1. However, both differ in the following aspects.
The traffic packets of Class A0 and Class A1 are transmitted preferentially to the traffic packet of Class B-CIR. Also, the traffic packets of Class A0 and Class A1 are guaranteed a minimum latency, whereas the traffic packet of Class B-CIR is not guaranteed such a latency.
Class B-EIR is a best-effort traffic similar to Class C. However, Class B-EIR is given a higher priority of transmission than Class C.
In RPR, the best effort traffic packet is determined as a fairness controlled traffic packet. Specifically, in RPR, the traffic packets of best-effort Class B-EIR and Class C are fairness controlled traffic packets.
In the following, a description will be given of the operation of a general node when congestion occurs in an RPR network.
A head node (Head Node) refers to a node which exists immediately upstream of a link on which congestion has occurred. When congestion occurs on a link, the head node notifies nodes located upstream of the node itself of a fair rate (FairRate) indicative of an upper limit value for a communication band for a fairness controlled traffic packet which passes the nodes. In this event, the head node transmits a control frame (fairness frame) which stores the fair rate in the nodes located upstream of the node itself. An upstream node which has received the fairness frame from the head node executes a band control such that the communication band of a fairness controlled traffic packet which uses the link on which the congestion has occurred is equal to or lower than the fair rate.
Also, the nodes located upstream of the head node notify its immediately upstream node of the fair rate notified from the head node using the fairness frame when the communication band of the fairness controlled traffic packet received from the immediately upstream node is equal to or higher than the fair rate.
On the other hand, the communication band of a fairness controlled traffic packet received from the immediately upstream node is lower than the fair rate, and the immediately upstream node is then notified, using the fairness frame, that the communication band of the fairness controlled traffic packet need not be restricted. For example, a fairness frame which sets the value of a full rate (FullRate) as the Fair rate is transmitted to the immediately upstream node.
Upon receipt of a fairness frame, whose fair rate is not the full rate, the node executes a band control such that the communication band of the fairness controlled traffic packet which uses the link on which the congestion has occurred is equal to or lower than the Fair rate.
A tail node (Tail Node) refers to a node which receives a fairness frame, whose fair rate is not the full rate, and which transmits a fairness frame, wose fair rate is the full rate. Also, a congestion domain (Congestion Domain) refers to a communication path from the head node to the tail node.
Upon receipt of a fairness frame, whose fair rate is the full rate, from an immediately downstream node, a node transmits a similar fairness frame to the upstream node. Accordingly, nodes upstream of the tail node do not conduct the band control for the fairness controlled traffic packet to be transmitted.
In the foregoing manner, in the RPR network, even if congestion occurs, the communication band of a link on which the congestion occurs is not used exclusively by a particular node, but can be fairly used by a plurality of nodes.
The aforementioned Non-Patent Document 1 defines that the fair rate initially notified by the head node is set to a communication rate of a fairness controlled traffic packet transmitted from the head node into the RPR network immediately before the congestion is detected.
Japanese Patent Application Laid-open No. 2006-345339, for example, describes a node which sends frames in accordance with a fair rate notified from a downstream node.
Incidentally, when a communication rate of a fairness controlled traffic packet transmitted from the head node into the RPR network immediately before the congestion is detected is defined to be the fair rate initially notified by the head node, an initial value for the fair rate notified by the head node can be zero in some cases. In this event, the transmission of fairness controlled traffic packets is stopped from nodes upstream of the head node, resulting in an interrupted communication and lower band utilization efficiency of the communication system,
Specifically, the initial value for the fair rate becomes zero in the following scenario.
For example, when congestion occurs at the head node by starting a transmission of a best-effort traffic packet which has not been so far transmitted, the initial value for the fair rate becomes zero.
Also, the initial value for the fair rate becomes zero when congestion occurs in the head node, in which no best-effort traffic packet has been so far transmitted, due to exhaustion of a communication band for a best-effort traffic packet transmitted from an upstream node as a result of a communication band reserved by starting a transmission of a traffic packet of Class B.
In such scenarios, nodes upstream of the head node must once stop the transmission of best-effort traffic packets which has been so far transmitted. As the fair rate is gradually increased by the head node executing a fair rate adjusting process, the upstream nodes can resume the transmission of best-effort traffic packets.
Accordingly, since upstream nodes stop the transmission of best-effort traffic packets from the time they are notified of the initial value for the fair rate equal to zero to the time that the transmission is resumed, the communication system is largely reduced in band utilization efficiency.
The above and other objects, features, and advantages of the present invention will become apparent from the following description with reference to the accompanying drawings, which illustrate examples of the present invention.